package cn.stylefeng.guns.modular.storage.entity;

import com.baomidou.mybatisplus.annotation.TableName;

import lombok.Data;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

/**
 * 入库单表
 */
@TableName("storage_put")
@Data
public class StoragePut implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 入库单编号
     */
    @TableField("storage_number")
    private String storageNumber;

    /**
     * 入库订单编号
     */
    @TableField("put_number")
    private String putNumber;

    /**
     * 客户id
     */
    @TableField("customer_id")
    private Long customerId;

    /**
     * 客户名称
     */
    @TableField("customer_name")
    private String customerName;

    /**
     * 客户单号
     */
    @TableField("customer_number")
    private String customerNumber;

    /**
     * 仓库id
     */
    @TableField("warehouse_id")
    private Long warehouseId;

    /**
     * 仓库名称
     */
    @TableField("warehouse_name")
    private String warehouseName;

    /**
     * 单据状态
     */
    @TableField("billstate")
    private String billstate;

    /**
     * 乐观锁
     */
    @TableField("version")
    private Integer version;

    /**
     * 交付客户id
     */
    @TableField("deliver_id")
    private Long deliverId;

    /**
     * 部门id
     */
    @TableField("dept_id")
    private Long deptId;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 创建用户
     */
    @TableField(value = "create_user", fill = FieldFill.INSERT)
    private Long createUser;

    /**
     * 修改用户
     */
    @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private Long updateUser;

    @Override
    public String toString() {
        return "StoragePut{" +
        "id=" + id +
        ", storageNumber=" + storageNumber +
        ", putNumber=" + putNumber +
        ", customerId=" + customerId +
        ", customerName=" + customerName +
        ", customerNumber=" + customerNumber +
        ", warehouseId=" + warehouseId +
        ", warehouseName=" + warehouseName +
        ", billstate=" + billstate +
        ", version=" + version +
        ", deliverId=" + deliverId +
        ", createTime=" + createTime +
        ", updateTime=" + updateTime +
        ", createUser=" + createUser +
        ", updateUser=" + updateUser +
        "}";
    }
}
